/*
 * Copyright (c) 2019-2020, Dmitry (DiSlord) dislordlive@gmail.com
 * All rights reserved.
 *
 * This is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 3, or (at your option)
 * any later version.
 *
 * The software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with GNU Radio; see the file COPYING.  If not, write to
 * the Free Software Foundation, Inc., 51 Franklin Street,
 * Boston, MA 02110-1301, USA.
 */

//****************************************************************
//                    Icons used in UI
//****************************************************************

// Touch test icon on screen
#if LCD_WIDTH < 800
#define CALIBRATION_OFFSET 16
#define TOUCH_MARK_W        9
#define TOUCH_MARK_H        9
#define TOUCH_MARK_X        4
#define TOUCH_MARK_Y        4
static const uint8_t touch_bitmap[]={
  _BMP16(0b0000100000000000),
  _BMP16(0b0100100100000000),
  _BMP16(0b0010101000000000),
  _BMP16(0b0000100000000000),
  _BMP16(0b1111011110000000),
  _BMP16(0b0000100000000000),
  _BMP16(0b0010101000000000),
  _BMP16(0b0100100100000000),
  _BMP16(0b0000100000000000),
};
#else
#define CALIBRATION_OFFSET 16
#define TOUCH_MARK_W       15
#define TOUCH_MARK_H       15
#define TOUCH_MARK_X        7
#define TOUCH_MARK_Y        7
static const uint8_t touch_bitmap[]={
  _BMP16(0b0000000100000000),
  _BMP16(0b0100000100000100),
  _BMP16(0b0010000100001000),
  _BMP16(0b0001000100010000),
  _BMP16(0b0000100100100000),
  _BMP16(0b0000010101000000),
  _BMP16(0b0000000100000000),
  _BMP16(0b1111111011111110),
  _BMP16(0b0000000100000000),
  _BMP16(0b0000010101000000),
  _BMP16(0b0000100100100000),
  _BMP16(0b0001000100010000),
  _BMP16(0b0010000100001000),
  _BMP16(0b0100000100000100),
  _BMP16(0b0000000100000000),
};
#endif

// Icons for menus
#if _USE_FONT_ < 3
#define ICON_SIZE         14
#define ICON_WIDTH        11
#define ICON_HEIGHT       11
#define ICON_GET_DATA(i) (&button_icons[2*ICON_HEIGHT*(i)])
static const uint8_t button_icons[] = {
  _BMP16(0b1111111111000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1111111111000000),

  _BMP16(0b1111111111000000),
  _BMP16(0b1000000000100000),
  _BMP16(0b1000000001100000),
  _BMP16(0b1000000011000000),
  _BMP16(0b1000000110000000),
  _BMP16(0b1010001101000000),
  _BMP16(0b1011011001000000),
  _BMP16(0b1001110001000000),
  _BMP16(0b1000100001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1111111111000000),

  _BMP16(0b0000000000000000),
  _BMP16(0b0001111000000000),
  _BMP16(0b0010000100000000),
  _BMP16(0b0100000010000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b1000000001000000),
  _BMP16(0b0100000010000000),
  _BMP16(0b0010000100000000),
  _BMP16(0b0001111000000000),

  _BMP16(0b0000000000000000),
  _BMP16(0b0001111000000000),
  _BMP16(0b0010000100000000),
  _BMP16(0b0100110010000000),
  _BMP16(0b1001111001000000),
  _BMP16(0b1011111101000000),
  _BMP16(0b1011111101000000),
  _BMP16(0b1001111001000000),
  _BMP16(0b0100110010000000),
  _BMP16(0b0010000100000000),
  _BMP16(0b0001111000000000),

  _BMP16(0b1111111111100000),
  _BMP16(0b1000000000100000),
  _BMP16(0b1000111110100000),
  _BMP16(0b1001100110100000),
  _BMP16(0b1011000110100000),
  _BMP16(0b1011000110100000),
  _BMP16(0b1011111110100000),
  _BMP16(0b1011000110100000),
  _BMP16(0b1011000110100000),
  _BMP16(0b1000000000100000),
  _BMP16(0b1111111111100000),

  _BMP16(0b1111111111100000),
  _BMP16(0b1000000000100000),
  _BMP16(0b1011000110100000),
  _BMP16(0b1011000110100000),
  _BMP16(0b1011101110100000),
  _BMP16(0b1011111110100000),
  _BMP16(0b1011010110100000),
  _BMP16(0b1011010110100000),
  _BMP16(0b1011000110100000),
  _BMP16(0b1000000000100000),
  _BMP16(0b1111111111100000),
};
#else
#define ICON_SIZE         18
#define ICON_WIDTH        14
#define ICON_HEIGHT       14
#define ICON_GET_DATA(i) (&button_icons[2*ICON_HEIGHT*(i)])
static const uint8_t button_icons[] = {
  _BMP16(0b1111111111111000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1111111111111000),

  _BMP16(0b1111111111111000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000000100),
  _BMP16(0b1000000000001100),
  _BMP16(0b1000000000011100),
  _BMP16(0b1010000000111000),
  _BMP16(0b1011000001110000),
  _BMP16(0b1011100011101000),
  _BMP16(0b1001110111001000),
  _BMP16(0b1000111110001000),
  _BMP16(0b1000011100001000),
  _BMP16(0b1000001000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1111111111111000),

  _BMP16(0b0000111110000000),
  _BMP16(0b0001000001000000),
  _BMP16(0b0010000000100000),
  _BMP16(0b0100000000010000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b0100000000010000),
  _BMP16(0b0010000000100000),
  _BMP16(0b0001000001000000),
  _BMP16(0b0000111110000000),

  _BMP16(0b0000111110000000),
  _BMP16(0b0001000001000000),
  _BMP16(0b0010000000100000),
  _BMP16(0b0100011100010000),
  _BMP16(0b1000111110001000),
  _BMP16(0b1001111111001000),
  _BMP16(0b1001111111001000),
  _BMP16(0b1001111111001000),
  _BMP16(0b1001111111001000),
  _BMP16(0b1000111110001000),
  _BMP16(0b0100011100010000),
  _BMP16(0b0010000000100000),
  _BMP16(0b0001000001000000),
  _BMP16(0b0000111110000000),

  _BMP16(0b1111111111111000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1000011111001000),
  _BMP16(0b1000110011001000),
  _BMP16(0b1001100011001000),
  _BMP16(0b1001100011001000),
  _BMP16(0b1001100011001000),
  _BMP16(0b1001111111001000),
  _BMP16(0b1001100011001000),
  _BMP16(0b1001100011001000),
  _BMP16(0b1001100011001000),
  _BMP16(0b1001100011001000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1111111111111000),

  _BMP16(0b1111111111111000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1011000001101000),
  _BMP16(0b1011100011101000),
  _BMP16(0b1011110111101000),
  _BMP16(0b1011111111101000),
  _BMP16(0b1011111111101000),
  _BMP16(0b1011011101101000),
  _BMP16(0b1011001001101000),
  _BMP16(0b1011001001101000),
  _BMP16(0b1011000001101000),
  _BMP16(0b1011000001101000),
  _BMP16(0b1000000000001000),
  _BMP16(0b1111111111111000),
};
#endif